/*
 * Powered By [rapid-framework]
 * Web Site: http://www.rapid-framework.org.cn
 * Google Code: http://code.google.com/p/rapid-framework/
 * Since 2008 - 2013
 */

package com.gxuwz.byssxsys.model;

import javax.persistence.*;

import org.hibernate.annotations.GenericGenerator;

import javax.validation.constraints.*;
import org.hibernate.validator.constraints.*;
import org.apache.commons.lang.builder.EqualsBuilder;
import org.apache.commons.lang.builder.HashCodeBuilder;
import org.apache.commons.lang.builder.ToStringBuilder;
import org.apache.commons.lang.builder.ToStringStyle;

import java.util.*;

import javacommon.base.*;
import javacommon.util.*;

import cn.org.rapid_framework.util.*;
import cn.org.rapid_framework.web.util.*;
import cn.org.rapid_framework.page.*;
import cn.org.rapid_framework.page.impl.*;

import com.gxuwz.byssxsys.model.*;
import com.gxuwz.byssxsys.dao.*;
import com.gxuwz.byssxsys.service.*;
import com.gxuwz.byssxsys.vo.query.*;

/**
 * @author badqiu email:badqiu(a)gmail.com
 * @version 1.0
 * @since 1.0
 */


@Entity
@Table(name = "stu_base_info")
public class StuBaseInfo extends BaseEntity implements java.io.Serializable{
	private static final long serialVersionUID = 5454155825314635342L;
	
	//alias
	public static final String TABLE_ALIAS = "StuBaseInfo";
	public static final String ALIAS_ID = "主键";
	public static final String ALIAS_STU_NO1 = "学号";
	public static final String ALIAS_STU_NAME2 = "姓名";
	public static final String ALIAS_STU_SEX3 = "性别";
	public static final String ALIAS_STU_ZY4 = "专业";
	public static final String ALIAS_STU_CLASSES5 = "班级";
	public static final String ALIAS_STU_XI6 = "系别";
	public static final String ALIAS_STU_IDCARD7 = "身份证号码";
	public static final String ALIAS_STU_MOBILE_PHONE8 = "联系电话";
	public static final String ALIAS_STU_EMAIL9 = "电子邮件";
	public static final String ALIAS_STU_SPECIALITY10 = "特长";
	public static final String ALIAS_STU_AWARDS11 = "获奖情况";
	public static final String ALIAS_STU_PASSWORD12 = "密码";
	public static final String ALIAS_STU_REMARK13 = "审核备注";
	public static final String ALIAS_STU_STATUE14 = "用户的状态，1-激活；0-禁用";
	
	//date formats
	

	//可以直接使用: @Length(max=50,message="用户名长度不能大于50")显示错误消息
	//columns START
    /**
     * 主键       db_column: id 
     */ 	
	
	private java.lang.Integer id;
    /**
     * 学号       db_column: stu_no1 
     */ 	
	@Length(max=50)
	private java.lang.String stuNo1;
    /**
     * 姓名       db_column: stu_name2 
     */ 	
	@Length(max=60)
	private java.lang.String stuName2;
    /**
     * 性别       db_column: stu_sex3 
     */ 	
	
	private java.lang.Integer stuSex3;
    /**
     * 专业       db_column: stu_zy4 
     */ 	
	@Length(max=100)
	private java.lang.String stuZy4;
    /**
     * 班级       db_column: stu_classes5 
     */ 	
	@Length(max=50)
	private java.lang.String stuClasses5;
    /**
     * 系别       db_column: stu_xi6 
     */ 	
	@Length(max=100)
	private java.lang.String stuXi6;
    /**
     * 身份证号码       db_column: stu_idcard7 
     */ 	
	@NotBlank @Length(max=50)
	private java.lang.String stuIdcard7;
    /**
     * 联系电话       db_column: stu_mobile_phone8 
     */ 	
	@NotBlank @Length(max=50)
	private java.lang.String stuMobilePhone8;
    /**
     * 电子邮件       db_column: stu_email9 
     */ 	
	@Email @Length(max=50)
	private java.lang.String stuEmail9;
    /**
     * 特长       db_column: stu_speciality10 
     */ 	
	@Length(max=100)
	private java.lang.String stuSpeciality10;
    /**
     * 获奖情况       db_column: stu_awards11 
     */ 	
	@Length(max=500)
	private java.lang.String stuAwards11;
    /**
     * 密码       db_column: stu_password12 
     */ 	
	@Length(max=50)
	private java.lang.String stuPassword12;
    /**
     * 审核备注       db_column: stu_remark13 
     */ 	
	@Length(max=500)
	private java.lang.String stuRemark13;
    /**
     * 用户的状态，1-激活；0-禁用       db_column: stu_statue14 
     */ 	
	
	private java.lang.Integer stuStatue14;
	//columns END


	public StuBaseInfo(){
	}

	public StuBaseInfo(
		java.lang.Integer id
	){
		this.id = id;
	}

	

	public void setId(java.lang.Integer value) {
		this.id = value;
	}
	
	@Id @GeneratedValue(generator="custom-id")
	@GenericGenerator(name="custom-id", strategy = "increment")
	@Column(name = "id", unique = true, nullable = false, insertable = true, updatable = true, length = 10)
	public java.lang.Integer getId() {
		return this.id;
	}
	
	@Column(name = "stu_no1", unique = true, nullable = true, insertable = true, updatable = true, length = 50)
	public java.lang.String getStuNo1() {
		return this.stuNo1;
	}
	
	public void setStuNo1(java.lang.String value) {
		this.stuNo1 = value;
	}
	
	@Column(name = "stu_name2", unique = false, nullable = true, insertable = true, updatable = true, length = 60)
	public java.lang.String getStuName2() {
		return this.stuName2;
	}
	
	public void setStuName2(java.lang.String value) {
		this.stuName2 = value;
	}
	
	@Column(name = "stu_sex3", unique = false, nullable = true, insertable = true, updatable = true, length = 10)
	public java.lang.Integer getStuSex3() {
		return this.stuSex3;
	}
	
	public void setStuSex3(java.lang.Integer value) {
		this.stuSex3 = value;
	}
	
	@Column(name = "stu_zy4", unique = false, nullable = true, insertable = true, updatable = true, length = 100)
	public java.lang.String getStuZy4() {
		return this.stuZy4;
	}
	
	public void setStuZy4(java.lang.String value) {
		this.stuZy4 = value;
	}
	
	@Column(name = "stu_classes5", unique = false, nullable = true, insertable = true, updatable = true, length = 50)
	public java.lang.String getStuClasses5() {
		return this.stuClasses5;
	}
	
	public void setStuClasses5(java.lang.String value) {
		this.stuClasses5 = value;
	}
	
	@Column(name = "stu_xi6", unique = false, nullable = true, insertable = true, updatable = true, length = 100)
	public java.lang.String getStuXi6() {
		return this.stuXi6;
	}
	
	public void setStuXi6(java.lang.String value) {
		this.stuXi6 = value;
	}
	
	@Column(name = "stu_idcard7", unique = false, nullable = false, insertable = true, updatable = true, length = 50)
	public java.lang.String getStuIdcard7() {
		return this.stuIdcard7;
	}
	
	public void setStuIdcard7(java.lang.String value) {
		this.stuIdcard7 = value;
	}
	
	@Column(name = "stu_mobile_phone8", unique = false, nullable = false, insertable = true, updatable = true, length = 50)
	public java.lang.String getStuMobilePhone8() {
		return this.stuMobilePhone8;
	}
	
	public void setStuMobilePhone8(java.lang.String value) {
		this.stuMobilePhone8 = value;
	}
	
	@Column(name = "stu_email9", unique = false, nullable = true, insertable = true, updatable = true, length = 50)
	public java.lang.String getStuEmail9() {
		return this.stuEmail9;
	}
	
	public void setStuEmail9(java.lang.String value) {
		this.stuEmail9 = value;
	}
	
	@Column(name = "stu_speciality10", unique = false, nullable = true, insertable = true, updatable = true, length = 100)
	public java.lang.String getStuSpeciality10() {
		return this.stuSpeciality10;
	}
	
	public void setStuSpeciality10(java.lang.String value) {
		this.stuSpeciality10 = value;
	}
	
	@Column(name = "stu_awards11", unique = false, nullable = true, insertable = true, updatable = true, length = 500)
	public java.lang.String getStuAwards11() {
		return this.stuAwards11;
	}
	
	public void setStuAwards11(java.lang.String value) {
		this.stuAwards11 = value;
	}
	
	@Column(name = "stu_password12", unique = false, nullable = true, insertable = true, updatable = true, length = 50)
	public java.lang.String getStuPassword12() {
		return this.stuPassword12;
	}
	
	public void setStuPassword12(java.lang.String value) {
		this.stuPassword12 = value;
	}
	
	@Column(name = "stu_remark13", unique = false, nullable = true, insertable = true, updatable = true, length = 500)
	public java.lang.String getStuRemark13() {
		return this.stuRemark13;
	}
	
	public void setStuRemark13(java.lang.String value) {
		this.stuRemark13 = value;
	}
	
	@Column(name = "stu_statue14", unique = false, nullable = true, insertable = true, updatable = true, length = 10)
	public java.lang.Integer getStuStatue14() {
		return this.stuStatue14;
	}
	
	public void setStuStatue14(java.lang.Integer value) {
		this.stuStatue14 = value;
	}
	

	public String toString() {
		return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
			.append("Id",getId())
			.append("StuNo1",getStuNo1())
			.append("StuName2",getStuName2())
			.append("StuSex3",getStuSex3())
			.append("StuZy4",getStuZy4())
			.append("StuClasses5",getStuClasses5())
			.append("StuXi6",getStuXi6())
			.append("StuIdcard7",getStuIdcard7())
			.append("StuMobilePhone8",getStuMobilePhone8())
			.append("StuEmail9",getStuEmail9())
			.append("StuSpeciality10",getStuSpeciality10())
			.append("StuAwards11",getStuAwards11())
			.append("StuPassword12",getStuPassword12())
			.append("StuRemark13",getStuRemark13())
			.append("StuStatue14",getStuStatue14())
			.toString();
	}
	
	public int hashCode() {
		return new HashCodeBuilder()
			.append(getId())
			.toHashCode();
	}
	
	public boolean equals(Object obj) {
		if(obj instanceof StuBaseInfo == false) return false;
		if(this == obj) return true;
		StuBaseInfo other = (StuBaseInfo)obj;
		return new EqualsBuilder()
			.append(getId(),other.getId())
			.isEquals();
	}
}

